home *** CD-ROM | disk | FTP | other *** search
- package sun.java2d;
-
- import java.awt.Font;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.security.PrivilegedAction;
- import java.util.ArrayList;
- import java.util.Hashtable;
- import java.util.Locale;
- import java.util.logging.Level;
- import java.util.logging.Logger;
-
- final class SunGraphicsEnvironment$1 implements PrivilegedAction {
- // $FF: synthetic field
- final SunGraphicsEnvironment this$0;
-
- SunGraphicsEnvironment$1(SunGraphicsEnvironment var1) {
- this.this$0 = var1;
- }
-
- public Object run() {
- String var1 = System.getProperty("os.name");
- if ("Linux".equals(var1)) {
- SunGraphicsEnvironment.isLinux = true;
- } else if ("SunOS".equals(var1)) {
- SunGraphicsEnvironment.isSolaris = true;
- }
-
- String var2 = System.getProperty("sun.java2d.debugfonts");
- if (var2 != null && !var2.equals("false")) {
- SunGraphicsEnvironment.debugFonts = true;
- SunGraphicsEnvironment.logger = Logger.getLogger("sun.java2d");
- if (var2.equals("warning")) {
- SunGraphicsEnvironment.logger.setLevel(Level.WARNING);
- } else if (var2.equals("severe")) {
- SunGraphicsEnvironment.logger.setLevel(Level.SEVERE);
- }
- }
-
- SunGraphicsEnvironment.noType1Font = "true".equals(System.getProperty("sun.java2d.noType1Font"));
- SunGraphicsEnvironment.jreLibDirName = System.getProperty("java.home", "") + File.separator + "lib";
- SunGraphicsEnvironment.jreFontDirName = SunGraphicsEnvironment.jreLibDirName + File.separator + "fonts";
- if (this.this$0.useAbsoluteFontFileNames()) {
- SunGraphicsEnvironment.access$002(SunGraphicsEnvironment.jreFontDirName + File.separator + "LucidaSansRegular.ttf");
- } else {
- SunGraphicsEnvironment.access$002("LucidaSansRegular.ttf");
- }
-
- File var3 = new File(SunGraphicsEnvironment.jreFontDirName + File.separator + "badfonts.txt");
- if (var3.exists()) {
- FileInputStream var4 = null;
-
- try {
- SunGraphicsEnvironment.access$102(new ArrayList());
- var4 = new FileInputStream(var3);
- InputStreamReader var5 = new InputStreamReader(var4);
- BufferedReader var6 = new BufferedReader(var5);
-
- while(true) {
- String var7 = var6.readLine();
- if (var7 == null) {
- break;
- }
-
- if (SunGraphicsEnvironment.debugFonts) {
- SunGraphicsEnvironment.logger.warning("read bad font: " + var7);
- }
-
- SunGraphicsEnvironment.access$100().add(var7);
- }
- } catch (IOException var9) {
- try {
- if (var4 != null) {
- var4.close();
- }
- } catch (IOException var8) {
- }
- }
- }
-
- if (SunGraphicsEnvironment.isLinux) {
- this.this$0.registerFontDir(SunGraphicsEnvironment.jreFontDirName);
- }
-
- SunGraphicsEnvironment.access$200(this.this$0, SunGraphicsEnvironment.jreFontDirName, true, 2, true, false);
- this.this$0.registerJREFontsWithPlatform(SunGraphicsEnvironment.jreFontDirName);
- SunGraphicsEnvironment.access$302(this.this$0, this.this$0.createFontConfiguration());
- this.this$0.getPlatformFontPathFromFontConfig();
- String var11 = SunGraphicsEnvironment.access$300(this.this$0).getExtraFontPath();
- boolean var12 = false;
- boolean var13 = false;
- String var14 = System.getProperty("sun.java2d.fontpath");
- if (var14 != null) {
- if (var14.startsWith("prepend:")) {
- var12 = true;
- var14 = var14.substring("prepend:".length());
- } else if (var14.startsWith("append:")) {
- var13 = true;
- var14 = var14.substring("append:".length());
- }
- }
-
- if (SunGraphicsEnvironment.debugFonts) {
- SunGraphicsEnvironment.logger.info("JRE font directory: " + SunGraphicsEnvironment.jreFontDirName);
- SunGraphicsEnvironment.logger.info("Extra font path: " + var11);
- SunGraphicsEnvironment.logger.info("Debug font path: " + var14);
- }
-
- if (var14 != null) {
- this.this$0.fontPath = this.this$0.getPlatformFontPath(SunGraphicsEnvironment.noType1Font);
- if (var11 != null) {
- this.this$0.fontPath = var11 + File.pathSeparator + this.this$0.fontPath;
- }
-
- if (var13) {
- this.this$0.fontPath = this.this$0.fontPath + File.pathSeparator + var14;
- } else if (var12) {
- this.this$0.fontPath = var14 + File.pathSeparator + this.this$0.fontPath;
- } else {
- this.this$0.fontPath = var14;
- }
-
- this.this$0.registerFontDirs(this.this$0.fontPath);
- } else if (var11 != null) {
- this.this$0.registerFontDirs(var11);
- }
-
- if (SunGraphicsEnvironment.isSolaris && Locale.JAPAN.equals(Locale.getDefault())) {
- this.this$0.registerFontDir("/usr/openwin/lib/locale/ja/X11/fonts/TT");
- }
-
- SunGraphicsEnvironment.access$400(this.this$0, SunGraphicsEnvironment.access$300(this.this$0), (Hashtable)null);
- SunGraphicsEnvironment.access$502(new Font("Dialog", 0, 12));
- return null;
- }
- }
-